Skip to content

feat!: integrate Uhura 0.4 into Spock - #26

Merged
softmarshmallow merged 14 commits into
mainfrom
feature/uhura-0.4-integration
Jul 21, 2026
Merged

feat!: integrate Uhura 0.4 into Spock#26
softmarshmallow merged 14 commits into
mainfrom
feature/uhura-0.4-integration

Conversation

@softmarshmallow

@softmarshmallow softmarshmallow commented Jul 20, 2026

Copy link
Copy Markdown
Member

Ready status

gridaco/uhura#24 merged first as 896aa6b. This branch now records that exact Uhura main revision in bf2ec17, and both the ordinary PR suite and the non-publishing package workflow have passed on the synchronized head.

Summary

  • advance the embedded Uhura checkout to the reviewed 0.4 machine-first language and runtime;
  • align Spock host, packaged sidecar, Editor, Play, inspection, IR, view, and adapter-provider protocol contracts;
  • admit the current uhura-editor-state/5, uhura-machine-inspection/1, and uhura-inspection/1 read models;
  • add an explicit checked-route admission boundary so application routes cannot collide with Spock-owned namespaces;
  • preserve Editor publication while retaining the last good Play generation when a route collision is introduced;
  • replace the legacy page/catalog/fixture starter with the canonical machine.uhura, ui.uhura, evidence.uhura, host.toml, and uhura.toml project shape;
  • remove stale 0.3 fixture paths and align framework diagnostics with strict 0.4 identities;
  • update package workflow assertions, sidecar verification, public docs, installable Uhura skill, and website framing.

Why

Uhura 0.4 replaces the previous page-first language with a machine-first language and new host/runtime contracts. Spock is the framework consumer of that language, so its embedded revision, packaged assets, generated starter, tests, skills, and public documentation must move together or a newly scaffolded project cannot be checked and served coherently.

Impact

This is intentionally breaking for the unreleased source-level Uhura integration. spock new now creates a complete Uhura 0.4 counter application with an explicit machine, UI projection, evidence, and host binding. Existing Spock authority behavior is unchanged.

The checked route view is now consumed through one host admission boundary. Spock-owned namespaces remain protected while similarly prefixed application routes remain valid.

Validation

  • cargo fmt --all -- --check;
  • cargo clippy --offline --locked --workspace --all-targets -- -D warnings;
  • cargo test --offline --locked --workspace --all-targets;
  • cargo run --offline --locked -p spock-cli -- check uhura/examples/instagram — 91 previews, 34 replay-derived previews, one expected unchecked provider warning;
  • SPOCK_BIN=target/debug/spock node scripts/check-doc-snippets.mjs — 34 snippets checked, 0 skipped;
  • corepack pnpm@10.11.0 -C www build — 35 pages, zero diagnostics;
  • public spock-lang and uhura-lang skills pass the canonical validator;
  • host route-admission, aggregate Editor/Play, packaged-sidecar, and protocol-focused suites passed;
  • live combined-host Editor/Play smoke passed with no browser warnings or errors;
  • non-publishing npm.yml run 29815243964 passed on bf2ec17: four native builds, Linux/macOS/Windows installed-package verification, and an exact 21-file package of 26,501,976 bytes under the documented 26 MiB cap. The real publish step was skipped.

Final checkpoints

  • a16797c — integrate the reviewed Uhura 0.4 revision and align Spock's host, templates, protocols, skills, tests, and documentation;
  • b4b8590 — close the final route-admission and aggregate Editor/Play review gaps;
  • 8818c97 — admit the measured Uhura 0.4 npm package under an explicit 26 MiB guard;
  • 3d29f67 — make the package dry-run path reusable after a version already exists, without enabling a real publish;
  • bf2ec17 — synchronize the gitlink to the merged Uhura 0.4 main revision.

Completed dependency order

  1. feat!: replace Uhura with the 0.4 machine-first language uhura#24 merged as 896aa6b.
  2. This PR synchronized its uhura gitlink in bf2ec17.
  3. Spock CI and the non-publishing npm package workflow passed on that exact head.

Companion PR

@vercel

vercel Bot commented Jul 20, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
spock Ready Ready Preview, Comment Jul 21, 2026 8:41am

Request Review

@coderabbitai

coderabbitai Bot commented Jul 20, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@softmarshmallow, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 36 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: f62ebd33-38e8-4b06-b941-c460659fb1e4

📥 Commits

Reviewing files that changed from the base of the PR and between d33c70f and bf2ec17.

⛔ Files ignored due to path filters (1)
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (43)
  • .github/workflows/ci.yml
  • .github/workflows/npm.yml
  • README.md
  • crates/spock-cli/tests/cli.rs
  • crates/spock-host/src/assets.rs
  • crates/spock-host/src/client.rs
  • crates/spock-host/src/client_route_admission.rs
  • crates/spock-host/src/lib.rs
  • crates/spock-host/src/project.rs
  • crates/spock-host/src/routing.rs
  • crates/spock-host/src/server.rs
  • crates/spock-project/src/path.rs
  • crates/spock-project/src/starter.rs
  • crates/spock-project/templates/minimal-client/app/home/page.examples.uhura
  • crates/spock-project/templates/minimal-client/app/home/page.uhura
  • crates/spock-project/templates/minimal-client/catalog/base.toml
  • crates/spock-project/templates/minimal-client/evidence.uhura
  • crates/spock-project/templates/minimal-client/fixtures/empty.toml
  • crates/spock-project/templates/minimal-client/fixtures/scripts/empty.toml
  • crates/spock-project/templates/minimal-client/host.toml
  • crates/spock-project/templates/minimal-client/machine.uhura
  • crates/spock-project/templates/minimal-client/uhura.toml
  • crates/spock-project/templates/minimal-client/ui.uhura
  • crates/spock-project/tests/project_flow.rs
  • docs/reference/cli.md
  • docs/reference/http.md
  • docs/rfd/0020-distribution.md
  • docs/rfd/0022-spock-framework.md
  • docs/start/install.md
  • docs/start/quickstart.md
  • docs/status.md
  • docs/uhura.md
  • npm/scripts/sidecar.mjs
  • skills/README.md
  • skills/uhura-lang/SKILL.md
  • skills/uhura-lang/agents/openai.yaml
  • skills/uhura-lang/references/project-and-providers.md
  • skills/uhura-lang/references/source-language.md
  • skills/uhura-lang/references/tooling-and-limits.md
  • skills/uhura-lang/references/workflows.md
  • uhura
  • www/src/components/marketing/experience-trace.astro
  • www/src/components/marketing/framework-structure.astro
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/uhura-0.4-integration

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@softmarshmallow
softmarshmallow marked this pull request as ready for review July 21, 2026 08:51
@softmarshmallow
softmarshmallow merged commit 927e05e into main Jul 21, 2026
14 of 15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant